package jmine.tec.persist.dbchangelog.dao;

import java.util.List;

import org.hibernate.Criteria;
import org.hibernate.criterion.Order;

import jmine.tec.persist.dbchangelog.domain.DatabaseChangeLog;
import bancosys.tec.persist.dao.BaseDAO;

/**
 * DAO para consulta do registros de alterações na base de dados.
 */
public class DatabaseChangeLogDAO extends BaseDAO<DatabaseChangeLog> {

    /**
     * @return Todos os registro de alteração de banco de dados, ordenados pela data/hora de execução de forma decrescente.
     */
    public List<DatabaseChangeLog> findAllOrderedByTimestamp() {
        Criteria criteria = this.createCriteria();
        criteria.addOrder(Order.desc("timestamp"));
        return this.executeQuery(criteria);
    }
}
